In recent years, the number of devices having network connectivity has increased substantially and it is predicted that, in the future, even the most mundane objects will have embedded network connectivity. The so-called “Internet of Things” (IoT) is a network of physical devices, such as machines, portable computers, and vehicles, which include embedded electronics and software that enables them to communicate with one another directly and indirectly. These networks may also include sensors for collecting data and actuators for performing certain control functions. Networks of such devices have near endless applications such as in home automation, industrial automation, automobiles, electrical grids, and healthcare.
One challenge that exists is with respect to establishing and maintaining effective security and privacy for communications between devices in the IoT. At least some of the devices in a system will often have very constrained processing power and memory, with little to no capability for direct human-machine interface. Accordingly, many traditional methods for establishing and maintaining secure communications between devices are not user-friendly, practical, or feasible. Accordingly, it would be advantageous to provide a user-friendly method of establishing secure communications between devices of a particular system.